#ifndef __LENGTHUNIT_H__
#define __LENGTHUNIT_H__

#define  MILE  LengthUnit::getMile( )
#define  YARD  LengthUnit::getYard( )
#define  FEET  LengthUnit::getFeet( )



class LengthUnit
{
private:
	explicit LengthUnit(const unsigned int factor);
public:	
	unsigned int toAmountInBaseUnit( ) const;
	static const LengthUnit& getMile( );
	static const LengthUnit& getYard( );
	static const LengthUnit& getFeet( );

private:
	unsigned int factor;
};

#endif
